package com.easylinkin.linkappapi.airconditioner.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.easylinkin.linkappapi.airconditioner.entity.AirHostDevice;
import com.easylinkin.linkappapi.common.model.RequestModel;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Set;

public interface AirHostDeviceService extends IService<AirHostDevice> {

    List<AirHostDevice> getAll();

    void batchInsert(List<AirHostDevice> list);

    void remove(AirHostDevice airHostDevice);

//    IPage<AirHostDevice> selectGroupByStatistics(Page<AirHostDevice> page, AirHostDevice airHostDevice);

    /***
     * 下载导入模板
     * @param request
     * @param response
     */
    void getImportTemplate(HttpServletRequest request, HttpServletResponse response);

    /**
     * 导入数据
     *
     * @param file xls文件
     * @return 操作结果
     */
    Set importData(MultipartFile file);

//    IPage<AirHostDevice> getHistoricDataFromEs(Page page, AirHostDevice airHostDevice);

//    /***
//     * 导出
//     * @param request
//     * @param response
//     */
//    void exportData(AirHostDevice requestModel,HttpServletRequest request, HttpServletResponse response);

    void removeIds( AirHostDevice airHostDevice);

    AirHostDevice getById(String deviceId);

    void updateAirHostDeviceById(AirHostDevice airHostDevice);
}
